#pragma once
#include <stdio.h>

// 终端清屏
#if defined(_WIN32) || defined(_WIN64)
    #define clear() system("cls")
#else
    #define clear() system("clear")
#endif

// 如果文件不存在，创建空文件
#define touch(p) do { \
	FILE* __f = fopen(p, "ab"); \
	if (__f) fclose(__f); \
} while (0)

// 清除stdin残留字符
#define clearstdin() do { \
	int ch; \
	while ((ch=getchar()) != '\n' && ch != EOF); \
} while(0)

// 征询用户同意
static inline int agree() {
	char ch;
	scanf("%c", &ch);
	clearstdin();
	if (ch == 'y' || ch == 'Y') return 1;
	else return 0;
}

// 是否继续当前操作
#define ifcontinue(E) do { \
	printf("→是否继续？\nY) 是\t\t*) 否，退出\n请选择操作: "); \
	if (!agree()) return; \
} while(0)

